package com.gs.thunder.service;

import com.gs.thunder.entity.AEAPAcceptedProject;
import com.gs.thunder.entity.AEAPProjectReview;
import com.gs.thunder.web.vo.AEAPAcceptedProjectVO;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * Created with IntelliJ IDEA.
 * User: Legolas
 * Date: 2017/12/25 0025
 */
/*防雷行政审批子系统*/
@Service
public interface AEAPService {

    void addProject(AEAPAcceptedProject project);
    void updateProject(AEAPAcceptedProject project);
    void deleteProject(String id);

    //查询所有项目
    List<AEAPAcceptedProjectVO> getProjectWithPage(Integer pageNum, Integer pageSize);
    //根据项目编号查询
    AEAPAcceptedProjectVO getProjectById(String id);
    //根据项目名查询
    List<AEAPAcceptedProjectVO> getProjectByNameWithPage(String name, Integer pageNum, Integer pageSize);
    //根据项目地址查询
    List<AEAPAcceptedProjectVO> getProjectByAddressWithPage(String address, Integer pageNum, Integer pageSize);
    //根据所在区域查询
    List<AEAPAcceptedProjectVO> getProjectByRegionWithPage(String region, Integer pageNum, Integer pageSize);
    //根据申报时间查询
    List<AEAPAcceptedProjectVO> getProjectByTimeWithPage(String time, Integer pageNum, Integer pageSize);


    void addPredesignReview();
    void updatePredesignReview();
    void deletePredesignReview();

    void addDrawingReview();
    void updateDrawingReview();
    void deleteDrawingReview();

    void addFinalReview();
    void updateFinalReview();
    void deleteFinalReview();

    /**
     * 根据审核状态和许可文书编号获取相应状态下的审核记录分页结果
     * @param status 审核状态
     * @param pageNum
     * @param pageSize
     * @return
     */
    List<AEAPProjectReview> getReviewWithPage(String status,Integer pageNum,Integer pageSize);
    //根据许可文书id查询
    AEAPProjectReview getReviewById(String status,String reviewId);
    //根据项目编号查询
    AEAPProjectReview getReviewByProjectIdWithPage(String status,String projectId);
    //根据审核时间查询
    List<AEAPProjectReview> getReviewByVerifyTimeWithPage(String status,String time,Integer pageNum,Integer pageSize);

}
